home *** CD-ROM | disk | FTP | other *** search
/ L' Effet Pommier 3 / L'Effet Pommier - Volume 03.iso / Programmation / Alpha ƒ / LaTeX / latex 2.09 / smart.tcl < prev   
Text File  |  1994-10-13  |  707b  |  43 lines

  1.  
  2. proc literalDQuote {} {
  3.     return [expr {[lookAt [expr [getPos]-1]] == "\\"}]
  4. }
  5.  
  6. proc smartDQuote {} {
  7.     global smartQuotes
  8.     if {!$smartQuotes || [literalDQuote]} { insertText {"}; return }
  9.     if {[leftQ]} {
  10.         insertText {``}
  11.     } else {
  12.         insertText {''}
  13.     }
  14. }
  15. ascii 0x22 <s> smartDQuote TeX
  16.  
  17. proc smartQuote {} {
  18.     global smartQuotes
  19.     if {!$smartQuotes} { insertText {'}; return }
  20.     if {[leftQ]} {
  21.         insertText {`}
  22.     } else {
  23.         insertText {'}
  24.     }
  25. }
  26. ascii 0x27 smartQuote TeX
  27.  
  28. proc leftQ {} {
  29.     if {[getPos] == 0} {return 1};
  30.     set q [lookAt [expr [getPos]-1]]
  31.     case $q in {
  32.         {\t}  {return 1}
  33.         {(}  {return 1}
  34.         {\{}  {return 1}
  35.         {[}  {return 1}
  36.         {<}  {return 1}
  37.         {\ } {return 1}
  38.         {\r} {return 1}
  39.     }
  40.     return 0
  41. }
  42.  
  43.